Image processing device, image forming device, image processing method, image forming method, program, and computer readable recording medium on which the program is recorded

ABSTRACT

In case of transmitting a document file such as a PDF file to a printer without converting it into print data, a PC extracts from the document file to be printed information to be accessed when starting an analysis of the document file and transmits the information to the printer. The PC extracts a specified data from the document file and transmits it to the printer each time when the specified data is requested by the printer.

[0001] This application is based on Japanese Patent Application No.2002-335277, filed on Nov. 19, 2002, the contents of which are herebyincorporated by reference.

BACKGROUND OF THE INVENTION

[0002] 1. Field of the Invention

[0003] The invention relates to an image processing device, an imageforming device, an image processing method, an image forming method, aprogram, and a computer readable recording medium on which the programis recorded. In particular, the invention relates to an image processingdevice, an image forming device, an image processing method, an imageforming method, a program, and a computer readable recording medium onwhich the program is recorded, f or transmitting and printing a documentfile, which includes objects that can be arranged in the file in anorder different from the order of pages as well as reference informationthat indicates the locations of the objects within the file, and whichdefines pages having a specified object, from the image processingdevice to the image forming device without converting the document fileinto print data.

[0004] 2. Description of the Related Art

[0005] A personal computer (“PC”) is capable of transmitting a documentfile stored in, for example, a hard disk to a printer via a network suchas LAN.

[0006] In this case, the document file is transmitted after beingconverted into print data described in a printer-recognizable PDL (PageDescription Language) such as PS (PostScript®) by means of a printerdriver typically installed in the PC.

[0007] On the other hand, PDF (Portable Document Format) files arewidely used being distributed over the Internet as a type of documentfile that can be reproduced in the same format as the original documentregardless of the types of hardware or application. The PDF file hasobjects that can be arranged in a file in an order different from theorder of pages and reference information that indicates the locations ofthe objects in the file, and defines a page consisting of specifiedobjects.

[0008] In the meanwhile, a PDF file may contain several hundreds ofpages of data. When such a large PDF file is converted into print databy a PC, the load on the PC can be enormous due to the reason that ittakes a long time to convert, requires a complicated process, it takes along time to transmit the data as the data size increases as a result ofthe conversion, etc. In order to reduce the PC's load, printers that arecapable of directly printing a PDF file transmitted directly from a PCwithout the conversion (“PDF direct printing”) have been proposed.

[0009] However, although a printer can print from the top page of theprint data received in case of print data that are described in PDL suchas PS as the data to be printed are arranged in the order of pages in afile, a printer cannot print until after the entire data is received incase of a PDF file as the data to be printed can be arrangedirrespective of the order of pages in the file. Consequently, such aprinter sometimes ends up being unable to print a PDF file as it cannotreceive the entire file due to the limitation of its memory capacity(usable capacity or vacant capacity).

[0010] In connection with this problem, devices that are capable ofreconstituting the contents of a PDF file in order to display the datain the order of receipt without having to receive the entire PDF filehave been proposed (e.g., U.S. Pat. No. 6,067,553).

[0011] However, in case of the device disclosed in the abovementionedissued patent, it still requires a complicated process forreconstituting a PDF file on the transmission side, such as a PC, priorto the file transfer. Therefore, the technology in the above device hasa problem that it does not reduce the load on the PC compared toconverting PDF files into print data described in PDL such as PS.

[0012] Moreover, the abovementioned technology is basically a technologyof displaying on display units so that it does not take muchconsideration in printing on printers. More specifically, in case thereis a need of printing a file in the order different from the order ofpages in the file, such as in a case when a special printing condition,for example, face up, is applied, where printing is executed from thelast page to the top page sequentially, the abovementioned technologycannot be used, thus making it difficult to be applied to the PDF directprinting.

[0013] Further, because PDF files are widely distributed, it ispreferable to be able to exchange them over the network without addingany changes or correction. Another problem with the abovementioneddevice is that a revised file becomes completely different from theoriginal PDF file. Moreover, some of the PDF files are constituted insuch a way that does not allow any changes from the security standpoint,thus making them impossible to be reconstituted at all.

SUMMARY OF THE INVENTION

[0014] It is an object of the present invention to provide an imageprocessing device, an image forming device, an image processing method,an image forming method, a program, and a computer readable recordingmedium on which the program is recorded, which are improved for solvingthe abovementioned problems.

[0015] A more specific object of the present invention is to provide animage processing device, an image forming device, an image processingmethod, an image forming method, a program, and a computer readablerecording medium on which the program is recorded that make it possibleto print more securely considering the printing condition even whendocument files such as PDF files are transmitted without being convertedto print data to an image forming device having a memory unit with alimited amount of usable capacity while simultaneously suppressing theload on the transmission side.

[0016] According to an aspect of the invention, there is provided animage processing device for transmitting a document file, which includesobjects that can be arranged in the file in an order different from theorder of pages as well as reference information that indicates thelocations of the objects within the file, and which defines pages havinga specified object, to an image forming device without converting thedocument file into print data, comprising: a first extractor forextracting from the document file to be printed information to beaccessed when starting an analysis of the document file; a firsttransmitter for transmitting the information extracted from the documentfile by the first extractor to the image forming device for printing thedocument file; a receiver for receiving a transmission requestconcerning a specific data among the document file from the imageforming device; a second extractor for extracting a data incorrespondence with the transmission request from the document file; anda second transmitter for transmitting the data extracted from thedocument file by the second extractor to the image forming device.

[0017] The invention makes it possible to print a document file such asa PDF file safely even when the document file is transmitted to an imageforming device having a storage unit with a limited amount of usablecapacity without converting it into print data. It is also capable ofreducing the load of the transmission side as it is not necessary to doany changes such as reconstitution and conversion of a document file onthe document transmission side. It can also easily handle any specialprinting conditions such as booklet stitching or face up, which requireprinting a file in an order different from the order of pages in thefile, by determining the data, which is requested by the image formingdevice to be transmitted from the image processing device, withreference to the printing condition.

[0018] According to another aspect of the invention, there is providedan image forming device for receiving and printing a document file,which includes objects that can be arranged in the file in an orderdifferent from the order of pages as well as reference information thatindicates the locations of the objects within the file, and whichdefines pages having a specified object, from an image processing devicewithout converting the document file into print data, comprising: afirst receiver for receiving from the image processing deviceinformation, which is extracted from the document file to be printed andis to be accessed when starting an analysis of the document file; acontroller for determining a necessary data from the document file basedon the result of the analysis of the information received by the firstreceiver; a transmitter for transmitting a transmission requestconcerning the necessary data to the image processing device; a secondreceiver for receiving the data transmitted by the image processingdevice in correspondence with the transmission request; and a printingunit for printing based on the data received by the second receiver.

[0019] According to still another aspect of the invention, there isprovided a program to be used in an image processing device fortransmitting a document file, which includes objects that can bearranged in the file in an order different from the order of pages aswell as reference information that indicates the locations of theobjects within the file, and which defines pages having a specifiedobject, to an image forming device without converting the document fileinto print data, the program causing the image processing device toexecute a process comprising the steps of: 1) extracting from thedocument file to be printed information to be accessed when starting ananalysis of the document file; 2) transmitting the information extractedfrom the document file in step 1) to the image forming device forprinting the document file; 3) receiving a transmission requestconcerning a specific data among the document file from the imageforming device; 4) extracting a data in correspondence with thetransmission request from the document file; and 5) transmitting thedata extracted from the document file instep 4) to the image formingdevice.

[0020] According to a further aspect of the invention, there is provideda program to be used in an image forming device for receiving andprinting a document file, which includes objects that can be arranged inthe file in an order different from the order of pages as well asreference information that indicates the locations of the objects withinthe file, and which defines pages having a specified object, from animage processing device without converting the document file into printdata, the program causing the image forming device to execute a processcomprising the steps of: 1) receiving from the image processing deviceinformation, which is extracted from the document file to be printed andis to be accessed when starting an analysis of the document file; 2)determining a necessary data from the document file based on the resultof the analysis of the information received in step 1); 3) transmittinga transmission request concerning the necessary data to the imageprocessing device; 4) receiving the data transmitted by the imageprocessing device in correspondence with the transmission request; and5) printing based on the data received in step 4).

[0021] According to a still further aspect of the invention, there isprovided an image processing method for transmitting a document file,which includes objects that can be arranged in the file in an orderdifferent from the order of pages as well as reference information thatindicates the locations of the objects within the file, and whichdefines pages having a specified object, to an image forming devicewithout converting the document file into print data, comprising thesteps of: 1) extracting from the document file to be printed informationto be accessed when starting an analysis of the document file; 2)transmitting the information extracted from the document file in step 1)to the image forming device for printing the document file; 3) receivinga transmission request concerning a specific data among the documentfile from the image forming device; 4) extracting a data incorrespondence with the transmission request from the document file; and5) transmitting the data extracted from the document file in step 4) tothe image forming device.

[0022] According to a yet further aspect of the invention, there isprovided an image forming method for receiving and printing a documentfile, which includes objects that can be arranged in the file in anorder different from the order of pages as well as reference informationthat indicates the locations of the objects within the file, and whichdefines pages having a specified object, from an image processing devicewithout converting the document file into print data, comprising thesteps of: 1) receiving from the image processing device information,which is extracted from the document file to be printed and is to beaccessed when starting an analysis of the document file; 2) determininga necessary data from the document file based on the result of theanalysis of the information received in step 1); 3) transmitting atransmission request concerning the necessary data to the imageprocessing device; 4) receiving the data transmitted by the imageprocessing device in correspondence with the transmission request; and5) printing based on the data received in step 4).

[0023] The objects, characteristics and properties of this inventionother than those set forth above will become apparent from thedescription given herein below with reference to preferred embodimentsillustrated in the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

[0024]FIG. 1 is a block diagram showing the constitution of a printingsystem including PCs and a printer according to an embodiment of thepresent invention;

[0025]FIG. 2 is a block diagram showing the constitution of the PCsshown in FIG. 1;

[0026]FIG. 3 is a block diagram showing the constitution of the printershown in FIG. 1;

[0027]FIG. 4 is a diagram for describing a standard PDF file;

[0028]FIG. 5 shows a sample of the PDF file;

[0029]FIG. 6 is a diagram for describing the procedure of analyzing thePDF file;

[0030]FIG. 7 is a flowchart for describing the process conducted in thePCs;

[0031]FIG. 8 is a flowchart for describing the process conducted in theprinter;

[0032]FIG. 9 is a flowchart for describing the process conducted in theprinter continuing from FIG. 8;

[0033]FIG. 10 is a flowchart for describing the printing process shownin FIG. 9;

[0034]FIG. 11 is a diagram for describing the procedure of analyzing thePDF file consisting of multiple pages;

[0035]FIG. 12 is a diagram for describing the procedure of analyzing thePDF file consisting of multiple pages;

[0036]FIG. 13 is a diagram showing an example of printing condition; and

[0037]FIG. 14 is a diagram for describing the printing method where thebooklet stitching is applied.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0038] The embodiments of this invention will be described below withreference to the accompanying drawings.

[0039]FIG. 1 is a block diagram showing the constitution of a printingsystem including a PC and a printer according to an embodiment of thepresent invention. As shown in FIG. 1, the printing system is equippedwith PCs 100A and 100B having a function as an image processing deviceand a printer 200 as an image forming device which are connectedcommunicably with each other via a network 300. The network 300 consistsof a LAN based on standards such as Ethernet®, Token Ring, FDDI, etc.,and a WAN consisting of LANs connected by a dedicated line.

[0040] The types and the number of equipment to be connected to thenetwork are not limited to those shown in FIG. 1. The printer 200 can beconnected directly with PC 100A or 100B (local connection) without goingthrough the network 300.

[0041]FIG. 2 is a block diagram showing the constitution of the PC 100Aor 100B shown in FIG. 1. As shown in FIG. 2, the PC 100A or 100Bcontains a CPU 101 for controlling the entire device and executingvarious computations, a ROM 102 for storing programs and data, a RAM 103for storing programs and data temporarily, a hard disk 104 as anexternal storage unit for storing various programs and data, a displayunit 105 such as a liquid crystal display for displaying variousinformation, an input unit 106 consisting of a keyboard, a mouse, etc.,for entering various instructions, and a network interface 107 such as aLAN card for connecting to the network 300, all of which areinterconnected via a bus 108 for exchanging signals.

[0042]FIG. 3 is a block diagram showing the constitution of the printer200 shown in FIG. 1. As shown in FIG. 3, the printer 200 contains a CPU201, a ROM 202, a RMA 203, an operating panel unit 204, a printing unit205, and a network interface 206, all of which are interconnected by abus 207 for exchanging signals. Of the constituting elements of theprinter 200, those that have the identical functions as the constitutingmembers of the PCs 100A and 100B are not described here to avoidduplications.

[0043] The RAM 203 can store the data received from the PC temporarily.The ROM 202 stores font data, which are the data concerning the fonts ofcharacters. The printer 200 can be equipped with a hard disk as anexternal storage unit for storing various programs and data. Theoperating panel unit 204 is used for various information displays andentering various instructions. The printing unit 205 prints various dataon a recording medium such as paper using a known image forming processsuch as an electronic photography type process.

[0044] The PCs 100A and 100B as well as the printer 200 can containconstitutional elements other than those described above, or may notinclude a portion of the abovementioned elements. A case of transmittingdata from the PC 100A to the printer 200 for printing will be describedbelow.

[0045] In the printing system shown in FIG. 1, two types of printing,namely, the normal printing and the PDF direct printing, are possible.In executing the normal printing, a specific file is transmitted to theprinter 200 after being converted into print data described in PDL suchas PS by means of a printer driver installed in the hard disk 104 of PC100A. On the other hand, in executing the PDF direct printing, a PDFfile is transmitted from the PC 100A to the printer 200 without beingtransformed into print data according to a program (to be describedlater) installed in the hard disk 104.

[0046] The structure of a standard PDF file and the method of analyzingthe PDF file will be described below with reference to FIG. 4 throughFIG. 6. FIG. 4 is a diagram for describing the constitution of astandard PDF file, FIG. 5 is a diagram showing a sample of the PDF file,and FIG. 6 is a diagram for describing the procedure of analyzing thePDF file. FIG. 4 through FIG. 6 are prepared using “PDF Reference ThirdEdition Adobe Portable Document Format, Version 1.4” (Adobe SystemsIncorporated) as a reference.

[0047] As can be seen from FIG. 4 and FIG. 5, a standard PDF file 500consists of a header 510, a body 520, a cross-reference table 530, and atrailer 540.

[0048] The header 510 contains a comment that starts with %. From theheader 510 shown in FIG. 5, one can see that the file's format is PDF,and the version (1.4 in this case) of the PDF specification.

[0049] The body 520 contains the objects that constitute the document(objects 1 through 6 in FIG. 5). The objects are the individual elementsthat constitute the document including the document structure, pageinformation, font information, and color information. For example, thefirst object 1 is defined by the description from “10 obj” to “endobj”and other objects are also defined in a similar manner. Here, the firstnumeral and the second numeral in “10 obj” represent the ID number andthe generation number of an object. In this body 520, various kinds ofinformation such as file attributes, page attributes, characterinformation, graphic information, and image information are constitutedby combining minimum units called objects.

[0050] The cross-reference table 530 is reference information thatindicates the position of the object within a file. In thecross-reference table 530, the locations of various objects withspecific ID numbers (1 through 6 in FIG. 5) are shown by the byte counts(offset) from the front of the file to the front of the objects. Thismakes it possible to access the objects lined up in the body 520 atrandom. The cross-reference table 530 starts with a key word named“xref” in the actual file.

[0051] The trailer 540 is information to be accessed at the startup ofthe file analysis. More specifically, the position information of thecross-reference table 530 in the file and the ID number of an object (aroot object to be the root of the hierarchical structure) that needs tobe referenced first will be described in the trailer 540. The numberthat is indicated next to “startxref” is the number of bytes (offset)from the front of the file to the front of the cross-reference table530. The row that includes “root” shows the ID number of the rootobject. Also, the row that includes “size” shows the number of objectsexisting in the file including the first entry (the ID number of theobject is “0”) of the cross-reference table 530. The trailer 540 existsin the end of the file and starts with a row that includes a key wordnamed “trailer.”

[0052] As shown in FIG. 6, the device for analyzing a standard PDF fileanalyzes the trailer 540 that exists at the end of the file first,andthen analyzes the cross-reference table 530. Based on the informationobtained in these analyses, it can analyze the contents of the pagedescribed in the body 520. The object contains the ID number of anotherobject where the data that is required next is described. Consequently,by tracing the ID number of the object required next, the total analysisof the PDF file becomes possible. As the ID numbers of the objects thatare to be referenced are indicated, the objects need not be arranged inthe order of analyses in the body of the PDF file. Therefore, theobjects can be described in the body of the PDF file in an arbitraryorder and consequently be arranged in the file in an order differentfrom the order of pages.

[0053] Next, the process performed in the PC 100A will be described withreference to FIG. 7. The algorithm shown in the flowchart of FIG. 7 isstored as a program in a storage unit such as a hard disk 104 of the PC100A and executed by the CPU 101.

[0054] What is described below is that the normal printing where aprinter driver is used for the PDF file 500 is not executed but the PDFdirect printing is executed to print the PDF file by means of theprinter 200.

[0055] An icon for the application program file of the PDF directprinting is displayed on the desktop of the PC 100A. The user canspecify the execution of the PDF direct printing by activating theapplication program by dragging and dropping the PDF file 500 on theicon. The execution of the PDF direct printing can be specified by othermeans.

[0056] When the user specifies the execution of the PDF direct printingfor the PDF file 500, the cross-reference table 530 and the trailer 540will be extracted first from the PDF file 500 (S101).

[0057] The extraction of the cross-reference table 530 and the trailer540 can be done by means of text retrieval of the keyword in the PDFfile 500.

[0058] The extracted cross-reference table 530 and the trailer 540 willbe transmitted to the image forming device, e.g., the printer 200, whichwas specified by the user in specifying the execution of the PDF directprinting (S102).

[0059] In the steps S101 and S102, the extraction and transmission ofboth the cross-reference table 530 and the trailer 540 are executed.However, it is possible to extract and transmit the cross-referencetable 530 after extracting and transmitting the trailer 540 only. Inthis case, the extraction of the cross-reference table 530 can be doneby using the offset value of the cross-reference table 530 shown next to“startxref” in correspondence with the request for transmission from theprinter 200.

[0060] Next, a judgment is made as to whether a transmission requestconcerning the specified data among the PDF file 500 is received fromthe printer 200 (S103). The specific data here is the data (for example,a specific object), which becomes necessary in sequence incorrespondence with the printing on the printer 200.

[0061] When the transmission request concerning a specific data isreceived (S103: Yes), the requested data is extracted from the PDF file500 (S104), and is transmitted to the printer 200 (S105). On the otherhand, if the transmission request concerning the specific data is notreceived (S103: No), the system advances to the step S106.

[0062] As a method of transmitting the PDF file from the PC 100A to theprinter 200, it uses the method of establishing a session between the PCand the printer, and transferring the specified PDF file by means ofexecuting the application program. Therefore, it will not burden theuser with extra operations. However, it is also possible to realize thetransfer of the PDF file using the function of the OS (OperatingSoftware).

[0063] The data requested to be transmitted (e.g., an object) isspecified by the number of bytes (offset) from the front of the file tothe front of the data and the length of the data expressed in the numberof bytes. As a transmission protocol, various protocols such as HTTP andFTP can be used.

[0064] In the step S106, a judgment is made as to whether the entire PDFfile printing is completed by the printer 200. The completion of theprinting can be judged by whether a printing completion notice isreceived from the printer 200.

[0065] If the printing of the PDF file is not completed (S106: No), theprogram returns to the step S103 and the process of the step S103through S106 will be repeated. In other words, each time when a specificdata is requested by the printer 200, the PC 100A extracts the datarequested by the printer 200, and transmits the extracted data to theprinter 200. When the printing of the entire PDF file is completed(S106: Yes), the execution of the process shown in FIG. 7 will beterminated.

[0066] Next, the process conducted in the printer 200 will be describedbelow referring to FIG. 8 through FIG. 10. The algorithm shown in theflowcharts of FIG. 8 through FIG. 10 is stored as a program in a storageunit such as a ROM 202 of the printer 200 and executed by the CPU 201.

[0067] What is described below is a case where the printer 200 receivesa PDF file from the PC 100A and executes the PDF direct printing of thereceived PDF file.

[0068] In order to describe the printing of a PDF file with multiplepages, a PDF file shown in FIG. 11 and FIG. 12 is used as a sample PDFfile to be printed. FIG. 11 and FIG. 12 are diagrams for describing theprocedure of analyzing the PDF file consisting of multiple pages. InFIG. 11 and FIG. 12, the constituting elements that are identical tothose in the PDF file shown in FIG. 4 through FIG. 6 are identified withthe identical numbers. The objects are identified by the ID numbers ofthe objects.

[0069] First, the printer 200 receives the cross-reference table 530 andthe trailer 540 transmitted by PC 100A (S201).

[0070] Next, the received cross-reference table 530 and the trailer 540are analyzed (S202). It is also possible first to receive and analyzeonly the trailer 540.

[0071] The analysis of the trailer 540 should clarify the number of theobjects in the PDF file and the ID number (“1” in FIG. 11) of the objectto be referenced first. The analysis of the cross-reference table 530should clarify the offsets of the objects 1 through 21 as well. Thismakes it possible to access each object efficiently.

[0072] Next, the printing condition is checked (S203). The printingcondition in this embodiment means the attribute related to the order ofprinting the pages. However, the printing condition may include otherattributes related to printing.

[0073]FIG. 13 is a diagram showing an example of printing condition.When booklet stitching is applied, the value of the “booklet stitching”is set ON. When the face up process, i.e., the process of printing insequence from the last page to the first page, is applied, the value ofthe “face up” is set ON; when the face down process, i.e., the processof printing in sequence from the first page to the last page, isapplied, the value of the “face up” is set OFF. When the N-in-1 process,i.e., the process of printing multiple pages (N pages) on a sheet ofpaper in a reduced size, the “N-in-1”is set 2 if it is 2-in-1, or 4 ifit is 4-in-1. If N-in-1 is not applied, the value of “N-in-1” is setto 1. If the collation process of printing the document per copy, thevalue of “collation” is set ON.

[0074] The printing condition is set through the operating panel unit204 in the printer 200 and is stored in the printer 200 in advance.However, the printing condition can also be specified when the userinstructs the execution of the PDF printing on the PC. In this case, theprinting condition is transmitted from the PC to the printer, forexample, together with the cross-reference table 530 and the trailer540.

[0075] Next, the PDF file is analyzed based on the printing conditionand the analysis results of the trailer 540 and the cross-referencetable 530 to determine the necessary data for conducting an appropriateprinting, and the transmission request for such necessary data istransmitted to the PC 100A (S204). The necessary data here can be anobject or a combination of appropriate data such as multiple objects.

[0076] It then waits until the requested data is received from the PC100A (S205: No). When the requested data is received (S205: Yes), thedata will be analyzed (S206).

[0077] More specifically, the object 1, which should be referencedfirst, is requested to the PC 100A as the necessary data. It can be seenfrom the information of the object 1 to be referenced first, as shown inFIG. 11, that the entire page information that coordinates all pages isdescribed in the object 3. Next, the object 3 is requested to the PC100A as the necessary data. It can be seen from the information of theobject 3 shown in FIG. 12 that the page information that contains thepage attributes for pages 1 through 8 are described in the objects 5, 7,9, 11, 13, 15, 17, and 19 respectively. The specific contents of eachpage are described in the objects 6, 8, 10, 12, 14, 16, 18, and 20respectively.

[0078] In the step S207, no intermediate language that can be internallyprocessed in the printer is generated after the analysis of the objectsthat are not the objects of page contents such as the objects 1 and 3.In the step in which the object 1 or 3 is analyzed, the preparation forone page of the PDF file (original file) is not completed as describedlater (S208: No), so that the program returns to the step S204.

[0079] A case in which the booklet stitching is applied in the printingof the PDF file shown in FIG. 11 and FIG. 12 is described here as anexample. When the book let stitching is applied, the first sheet must beprinted with the contents of the two pages from the first page backwardas well as the two pages from the last page forward. More specifically,the first sheet must be printed with the contents of the pages 8 and 1on the front and the contents of the pages 2 and 7 on the backrespectively as shown in FIG. 14. The numerals in the rectangles in FIG.14 show the page numbers.

[0080] Therefore, in the step S204, the object 19 concerning the page 8is requested as the necessary data to the PC 100A. When the object 19 isreceived (S205: Yes), the object 19 is analyzed (S206). As a result ofthe object 19, it is known that the specific contents of the page 8 aredescribed in the object 20. Therefore, the program goes back to the stepS204 again and the object 20 is requested as the necessary data to thePC 100A. When the object 20 is received (S205: Yes), it is known thatthe data of the page 8 to be printed is obtained (S206). Thus, theintermediate language for the data on the page 8 is generated (S207).

[0081] In the step S208, it is judged whether the preparation for onepage of the PDF file is completed. For example, if the data for one pageconsists of multiple objects and includes the object not yet processed,it is judged that the preparation for one page is not completed (S208:No), the program returns to the step S204 and the processes for thesteps S204 through S207 are repeated. A judgment may be made in the stepS208 as to whether the preparation for multiple pages of the PDF file iscompleted depending on the allowance of the usable capacity of thememory in the printer 200.

[0082] In the PDF file shown in FIG. 11 and FIG. 12, the data for onepage consists of an object containing the contents of one page.Therefore, if the intermediate language for the data of the page 8 isgenerated in the step S207, it is judged that the preparation for onepage of the PDF file is completed (S208: Yes). Raster data in the bitmap format is generated from the generated intermediate language (S209).The raster data thus generated is transmitted to the printing unit 205(S210), and the printing process is executed (S211).

[0083] When the printing process is executed as shown in FIG. 10, ajudgment is made first as to whether the output page, which is theentire data to be printed on a single sheet of paper, is completed(S301). For example, in a general case where one page of the PDF file isto be printed on a sheet of paper, it is judged that the output page iscompleted when the raster data for one page is generated (S301: Yes),and the output page is printed on the paper (S302), and the programreturns to the flowchart shown in FIGS. 8 and 9.

[0084] On the other hand, if the booklet stitching is to be applied tothe PDF file shown in FIG. 11 and FIG. 12, the pages 8 and 1 as well asthe pages 2 and 7 must be printed on the first sheet, so that it isjudged that the output page is not completed yet if only the raster datafor the page 8 has been generated (S301: No). In this case, the programreturns to the flowchart of FIGS. 8 and 9 without printing.

[0085] In the step S212 shown in FIG. 9, a judgment is made as towhether the printing for the entire pages of the PDF file is completed.If the printing of the entire pages of the PDF file is not completed(S212: No), the program returns to the step S204 and the process of thesteps S204 through S212 will be repeated.

[0086] Therefore, after the raster data is generated for the page 8 forthe PDF file shown in FIG. 11 and FIG. 12, the raster data are generatedfor the pages 1, 2 and 7 following the same sequence as described above(S209), and are transmitted to the printing unit (S210), following whichthe printing process is executed (S211).

[0087] When the raster data are generated for all four pages, i.e.,pages 8, 1, 2 and 7, of the PDF file, which are to be printed all on asingle sheet of paper, it is judged that the output page is completed(S301: Yes), and the output page is printed on the paper (S302), and theprogram returns to the flow chart shown in FIGS. 8 and 9. If N-in-1 isapplied as the printing condition, it is judged that the output page iscompleted each time when the raster data for N pages are generated.

[0088] Next, in executing the printing on the second sheet, the processfor the pages 6, 3, 4, and 5 of the PDF file is executed using the sameprocedure as described above, and the completed output page is printedon the sheet (S302). However, it is also possible to print whenever thedata to be printed on one side of a sheet are compiled.

[0089] When all the pages of the PDF file to be printed are completelyprinted (S212: Yes), the execution of the process shown in FIG. 8through FIG. 10 is terminated.

[0090] If the booklet stitching process is to be applied to the printingof a PDF file as described above, necessary data will be requested bythe printer to be transmitted from the PC in an order different from theorder of pages in the file. Also, when the face up process is applied tothe printing of a PDF file, the page data will be requested sequentiallyfrom the last page toward the first page of the file. If the face downprocess is applied, the page data will be requested sequentially in thesame order as the order of pages in the file. In other words, even inprinting the same PDF file, the order of printing pages is differentdepending on the printing condition. Thus, the data requested by theprinter to be transmitted from the PC is determined with reference tothe printing condition.

[0091] As a consequence, this embodiment enables the PC to extract aspecified data from the document file and transmit it to the printereach time when the specified data is requested by the printer in case oftransmitting to the printer a document file such as a PDF file withoutconverting it into print data described in PDL such as PS.

[0092] Therefore, this embodiment makes it possible to print a documentfile such as a PDF file safely even when the document file istransmitted to a printer having a storage unit with a limited amount ofusable capacity without converting it into print data. It is alsocapable of reducing the load of the transmission side, i.e., the PC, asit is not necessary to do any changes such as reconstitution andconversion of a document file on the document transmission side.

[0093] It can also easily handle any special printing conditions such asbooklet stitching or face up, which require printing a file in an orderdifferent from the order of pages in the file, by determining the data,which is requested by the printer to be transmitted from the PC, withreference to the printing condition.

[0094] It is obvious that this invention is not limited to theparticular embodiments shown and described above but may be variouslychanged and modified without departing from the technical concept ofthis invention.

[0095] For example, it is possible to use a computer such as aworkstation or a server instead of a PC as the device that works as animage processing device. It is also possible to use, in place of aprinter, an image forming device such as a facsimile machine, a copyingmachine, or an MFP (multi-function peripheral) that has a combination oftheir functions.

[0096] It is also possible to realize the means and method of variousprocesses for transmitting document files such as PDF files withoutconverting into print data from the image processing device to the imageforming device to be printed by a dedicated hardware circuit or aprogrammed computer. The program can be provided either by a computerreadable recording medium such as a flexible disk and a CD-ROM, or bybeing supplied on-line via a network such as the Internet. In this case,the program recorded on the computer readable recording medium isnormally transferred to and stored in a storage device such as a harddisk. The program can also be provided as independent applicationsoftware or can be built into the software of the device as a part ofits function.

What is claimed is:
 1. An image processing device for transmitting adocument file, which includes objects that can be arranged in the filein an order different from the order of pages as well as referenceinformation that indicates the locations of said objects within thefile, and which defines pages having a specified object, to an imageforming device without converting said document file into print data,comprising: a first extractor for extracting from the document file tobe printed information to be accessed when starting an analysis of saiddocument file; a first transmitter for transmitting the informationextracted from said document file by said first extractor to the imageforming device for printing said document file; a receiver for receivinga transmission request concerning a specific data among said documentfile from said image forming device; a second extractor for extracting adata in correspondence with said transmission request from said documentfile; and a second transmitter for transmitting the data extracted fromsaid document file by said second extractor to said image formingdevice.
 2. An image processing device as claimed in claim 1, whereinsaid document file is a Portable Document Format (PDF) file.
 3. An imageprocessing device as claimed in claim 2, wherein the information to beaccessed when starting an analysis of said document file includes atrailer.
 4. An image forming device for receiving and printing adocument file, which includes objects that can be arranged in the filein an order different from the order of pages as well as referenceinformation that indicates the locations of said objects within thefile, and which defines pages having a specified object, from an imageprocessing device without converting said document file into print data,comprising: a first receiver for receiving from said image processingdevice information, which is extracted from said document file to beprinted and is to be accessed when starting an analysis of said documentfile; a controller for determining a necessary data from said documentfile based on the result of the analysis of the information received bysaid first receiver; a transmitter for transmitting a transmissionrequest concerning said necessary data to said image processing device;a second receiver for receiving the data transmitted by said imageprocessing device in correspondence with said transmission request; anda printing unit for printing based on the data received by said secondreceiver.
 5. An image forming device as claimed in claim 4, wherein saidcontroller determines said necessary data with reference to printingconditions related to an order of printing pages.
 6. An image formingdevice as claimed in claim 4, wherein said document file is a PortableDocument Format (PDF) file.
 7. An image forming device as claimed inclaim 6, wherein the information to be accessed when starting ananalysis of said document file includes a trailer.
 8. A program to beused in an image processing device for transmitting a document file,which includes objects that can be arranged in the file in an orderdifferent from the order of pages as well as reference information thatindicates the locations of said objects within the file, and whichdefines pages having a specified object, to an image forming devicewithout converting said document file into print data, said programcausing the image processing device to execute a process comprising thesteps of: 1) extracting from the document file to be printed informationto be accessed when starting an analysis of said document file; 2)transmitting the information extracted from said document file instep 1) to the image forming device for printing said document file; 3)receiving a transmission request concerning a specific data among saiddocument file from said image forming device; 4) extracting a data incorrespondence with said transmission request from said document file;and 5) transmitting the data extracted from said document file in step4) to said image forming device.
 9. A program as claimed in claim 8,wherein said document file is a Portable Document Format (PDF) file. 10.A program as claimed in claim 9, wherein the information to be accessedwhen starting an analysis of said document file includes a trailer. 11.A computer readable recording medium on which the program as claimed inclaim 8 is recorded.
 12. A program to be used in an image forming devicefor receiving and printing a document file, which includes objects thatcan be arranged in the file in an order different from the order ofpages as well as reference information that indicates the locations ofsaid objects within the file, and which defines pages having a specifiedobject, from an image processing device without converting said documentfile into print data, said program causing the image forming device toexecute a process comprising the steps of: 1) receiving from said imageprocessing device information, which is extracted from said documentfile to be printed and is to be accessed when starting an analysis ofsaid document file; 2) determining a necessary data from said documentfile based on the result of the analysis of the information received instep 1); 3) transmitting a transmission request concerning saidnecessary data to said image processing device; 4) receiving the datatransmitted by said image processing device in correspondence with saidtransmission request; and 5) printing based on the data received in step4).
 13. A program as claimed in claim 12, wherein said necessary data isdetermined with reference to printing conditions related to an order ofprinting pages in step 2).
 14. A program as claimed in claim 12, whereinsaid document file is a Portable Document Format (PDF) file.
 15. Aprogram as claimed in claim 14, wherein the information to be accessedwhen starting an analysis of said document file includes a trailer. 16.A computer readable recording medium on which the program as claimed inclaim 12 is recorded.
 17. An image processing method for transmitting adocument file, which includes objects that can be arranged in the filein an order different from the order of pages as well as referenceinformation that indicates the locations of said objects within thefile,and which defines pages having a specified object, to an imageforming device without converting said document file into print data,comprising the steps of: 1) extracting from the document file to beprinted information to be accessed when starting an analysis of saiddocument file; 2) transmitting the information extracted from saiddocument file in step 1) to the image forming device for printing saiddocument file; 3) receiving a transmission request concerning a specificdata among said document file from said image forming device; 4)extracting a data in correspondence with said transmission request fromsaid document file; and 5) transmitting the data extracted from saiddocument file in step 4) to said image forming device.
 18. An imageprocessing method as claimed in claim 17, wherein said document file isa Portable Document Format (PDF) file.
 19. An image processing method asclaimed in claim 18, wherein the information to be accessed whenstarting an analysis of said document file includes a trailer.
 20. Animage forming method for receiving and printing a document file, whichincludes objects that can be arranged in the file in an order differentfrom the order of pages as well as reference information that indicatesthe locations of said objects within the file, and which defines pageshaving a specified object, from an image processing device withoutconverting said document file into print data, comprising the stepsof: 1) receiving from said image processing device information, which isextracted from said document file to be printed and is to be accessedwhen starting an analysis of said document file; 2) determining anecessary data from said document file based on the result of theanalysis of the information received in step 1); 3) transmitting atransmission request concerning said necessary data to said imageprocessing device; 4) receiving the data transmitted by said imageprocessing device in correspondence with said transmission request; and5) printing based on the data received in step 4).
 21. An image formingmethod as claimed in claim 20, wherein said necessary data is determinedwith reference to printing conditions related to an order of printingpages in step 2).
 22. An image forming method as claimed in claim 20,wherein said document file is a Portable Document Format (PDF) file. 23.An image forming method as claimed in claim 22, wherein the informationto be accessed when starting an analysis of said document includes atrailer.